#ifndef _CURSES_H_
#define _CURSES_H_

// terminal colors
#define FG_BASE   30
#define BG_BASE   40

#define BLACK_OFFSET    0
#define RED_OFFSET      1
#define GREEN_OFFSET    2
#define YELLOW_OFFSET   3
#define BLUE_OFFSET     4
#define MAGENTA_OFFSET  5
#define CYAN_OFFSET     6
#define WHITE_OFFSET    7

void GetCursorXY(int *x, int *y);

void SetCursorXY(int x, int y);

void MoveCursorXY(int dx, int dy);

void SetScreenColor(int fg, int bg);

void SetScrollableRegion(int line1, int line2);

void ClearLine();

void ClearRight();

void ClearDown();

void ClearScreen();

void SaveCursor();

void LoadCursor();

void ResetScreen();

#endif
